gtkmenu*: Simplify event handling
authorCarlos Garnacho <carlosg@gnome.org>
Tue, 2 May 2017 15:53:14 +0000 (17:53 +0200)
committerCarlos Garnacho <carlosg@gnome.org>
Thu, 25 May 2017 14:25:59 +0000 (16:25 +0200)
commit40ab7e1c958733125cb0f470fa77e5fa74985629
treec8d5468014bb05cebf186709717363640cdbc389
parent33c5f3c193e5592ff4ee09be33b72d2fb48732b7
gtkmenu*: Simplify event handling

Instead of delegating on the parent shell of a menu item/shell on a variety
of situations, Simplify event handling so:
1) Menu item selection is handled entirely on GtkMenuItem through crossing
   events.
2) The deepmost menu shell handles clicks inside and outside of it.

This avoids the rather hard to follow gtk_widget_event() calls going on all
throughout the handling of crossing and button events, and makes menus work
again.
gtk/gtkmenu.c
gtk/gtkmenuitem.c
gtk/gtkmenushell.c